home *** CD-ROM | disk | FTP | other *** search
/ Cracking 2 / Cracking II..iso / Texty / crackme / tut.txt < prev    next >
Encoding:
Text File  |  1999-09-03  |  2.5 KB  |  82 lines

  1. Solution for maccrack's crackme written using VB6
  2. [http://www.mesa-sys.com/~eternal/crackmevb6.zip]
  3.  
  4. Ok, well i needed a break from studying so i payed
  5. a visit the the famous crackme page and saw that
  6. finally someone did mine :-)
  7.  
  8. Anyway i got this crackme cause lot of ppl still
  9. have problems with VB - and take it from me, VB is
  10. as easy as cracking other stuff
  11.  
  12. The usual steps,
  13. 1) run crackme
  14. 2) get into reg box
  15. 3) fill, and let crackme check serial
  16.  
  17. And we get a nice german nag telling us serial is
  18. wrong, anyway, the nag saves us all because since
  19. VB4-32 there's only one VB API call used for this
  20. purpose : rtcmsgbox
  21.  
  22. Also the inputbox used in this crackme, and used
  23. alot in more general apps is created using a VB
  24. API function called : rtcinputbox - how nice, no?
  25.  
  26. So,
  27. 1) bpx rtcmsgbox, works!
  28. 2) bpx rtcinputbox, works!      xxxx:40208E
  29.    enter fake serial : 123
  30.  
  31.    back in sice, check out eax :-), some code
  32.    follows that moves our serial xxxx:4020AD
  33.    and some code to free a bit of memory and
  34.    then,
  35.  
  36. :004020E9 mov dword ptr [ebp+FFFFFF50], 00401C50     (*)
  37. :004020F3 push ecx
  38. :004020F4 push edx
  39. :004020F5 mov dword ptr [ebp+FFFFFF48], 00008008
  40. :004020FF Call dword ptr [MSVBVM60.__vbaVarTstEq]
  41. :00402105 test ax, ax
  42. :00402108 je 004021B4
  43.  
  44.    once you get use to some VB code tracing
  45.    you'll know enough after seeing this code
  46.    check out 401C50, or ecx and edx
  47.  
  48.    remark, if u check out ecx/edx you'll see
  49.    nothing at all - this is because VB uses
  50.    some weird addressing mode, to fix this
  51.    check memory ecx+8 and edx+8, there you'll
  52.    find offset of your serial and the correct
  53.    serial
  54.    
  55.    i found for ecx+8,
  56.    44 0F 51 .. .. ..
  57.    and for edx+8,
  58.    50 1C 40 .. .. ..
  59.  
  60.    i hope the value in edx+8 rings a bell (*),
  61.    if not go train your ASM knowledge a bit ;-)
  62.  
  63.    anyway, offset in ecx+8 is the one from our
  64.    serial, edx+8 is the real serial : 3484
  65.  
  66. Voila, solution this is my solution to this very
  67. easy crackme - all i can say is is that VB is
  68. not a problem, it all depends on the programmer
  69. if the protection is hard or easy, and this has
  70. nothing todo with the used programming language.
  71.  
  72. Greetz to all my friends at mEXELiTE, cORE, REBELS, ...
  73.           all regulars of #cracking, #cracking4newbies, ...
  74.  
  75. and shoutout to MaCcrAck for this crackme.
  76.  
  77. Vizion 08/1999.
  78.  
  79. ps. - for all mistakes, typo's and other stuff
  80.       contact my cat :-)
  81.     - add the MSVBVM60.DLL to the export list
  82.       before trying my solution